package com.java.day10.homework;

/**
 * 替换字符串的叠字
 * 例如，对于字符串 "hello nice to meet you"
 * 将其中出现两次的字符 ll 和 ee 分别替换为 l~ 和 e~
 * 输出为：hel~o nice to me~t you
 *"浩浩荡荡"
 * 输出为： 浩~荡~
 */
public class Homework2 {

    public static void main(String[] args) {
        String s = "hello nice to meet you";
        String r = dealStr(s);
        System.out.println(r);
    }

    public static String dealStr(String input) {
        //创建StringBuilder类的对象
        StringBuilder output = new StringBuilder();
        //遍历字符串
        for (int i = 0; i < input.length(); i++) {
            //获取字符串中的每一个字符
            char currentChar = input.charAt(i);
            if (i + 1 < input.length() && currentChar == input.charAt(i + 1)) {
                // 如果当前字符与下一个字符相同，则添加原字符加波浪号
                output.append(currentChar);
                output.append("~");
                // 跳过下一个字符
                i++;
            } else {
                // 否则直接添加当前字符
                output.append(currentChar);
            }
        }
        return output.toString();
    }
}


